package cn.wolfcode.trip.base.service;


import cn.wolfcode.trip.base.domain.DailyPaper;
import cn.wolfcode.trip.base.query.DailyPaperQueryObject;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

public interface IDailyPaperService {

    PageInfo<DailyPaper> query(DailyPaperQueryObject qo);

    void saveOrUpdate(DailyPaper dailyPaper);

    DailyPaper getDailyPaperById(Long id);

    /**
     * 根据用户id查询对应的日报收藏信息
     * @param uId
     * @return
     */
    List getCollect(Long uId);

    /**
     * 通过用户id添加对应点赞的日报
     * @param userId
     * @param likeId
     */
    void addLike(Long userId, Long likeId);

    /**
     * 通过用户id添加对应点赞的日报
     * @param userId
     * @param collectId
     */
    void addCollect(Long userId, Long collectId);

    /**
     * 根据用户id查询对应的日报点赞信息
     * @param uId
     * @return
     */
    List getlike(Long uId);


    /**
     * 删除对应id的
     * @param uId
     */
    void deleteLike(Long uId, Long likeId);


    void deleteCollect(Long uId, Long collectId);

    /**
     * 根据用户id查询关注的日报信息
     * @param qo
     * @return
     */
    PageInfo queryByUserId(DailyPaperQueryObject qo);

    /**
     * 根据关键字查询符合的条数
     * @param qo
     * @return
     */
    int selectNumByKeyword(DailyPaperQueryObject qo);
}
